import requests
from hashlib import md5


class ChaojiyingClient:

    def __init__(self, username, password, soft_id):
        self.username = username
        password = password.encode('utf8')
        # 将密码处理成密码的MD5摘要（密码的指纹）
        self.password = md5(password).hexdigest()
        self.soft_id = soft_id
        self.base_params = {
            'user': self.username,
            'pass2': self.password,
            'softid': self.soft_id,
        }
        self.headers = {
            'Connection': 'Keep-Alive',
            'User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',
        }

    def post_pic(self, im, codetype):
        params = {'codetype': codetype}
        params.update(self.base_params)
        files = {'userfile': ('ccc.jpg', im)}
        # 通过requests的post函数上传图片到超级鹰
        resp = requests.post(
            url='http://upload.chaojiying.net/Upload/Processing.php',
            data=params,
            files=files,
            headers=self.headers
        )
        return resp.json()


def main():
    chaojiying = ChaojiyingClient('jackfrued', 'Abc123!!', '900260')
    with open('result.png', 'rb') as file:
        result_dict = chaojiying.post_pic(file.read(), 1902)
        print(result_dict)


if __name__ == '__main__':
    main()

